<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style></style>
  </head>
  <body>
    <script>
      //一、 隐藏参数 ,箭头函数里没有arguments
      // function fn(){
      //     console.log(arguments);
      // }

      // fn(1,2,3);
      // let fn = (...arg)=>{
      //     console.log(arg);
      //     // console.log(arguments);
      // }
      // fn(1,3,4);

      // 二、箭头函数里的this；
      // 箭头函数内部没有this绑定，他的this绑定是上层的this
      // let fn = ()=>{
      //     console.log(this);
      // }
      // fn();
      // let obj = {
      //     name:"张三",
      //     fn:function(){
      //         console.log(this);
      //     },
      //     fn2(){
      //         console.log("fn2",this);
      //     },
      //     fn3:()=>{
      //         console.log("fn3",this);
      //     }
      // }

      // obj.fn2();
      // obj.fn3();

      // this穿透；
      document.onclick = () => {
        console.log(this); //不做穿透是打印的上一层的this
        // setTimeout(function () {
        //   console.log(this);
        // }, 1);
        // setTimeout(() => {
        //   console.log(this);
        // }, 1); //直接指向window
      };
    </script>
  </body>
</html>
